home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 19 / Amiga Format CD19 (1997-10-02)(Future Publishing)(GB)(Track 1 of 5)[!][issue 1997-11].iso / -seriously_amiga- / shareware / misc / virtualmem / include / libraries / virtualmem.h next >
C/C++ Source or Header  |  1997-08-18  |  1KB  |  58 lines

  1. #ifndef LIBRARIES_VIRTUALMEM_H
  2. #define LIBRARIES_VIRTUALMEM_H
  3.  
  4. /*
  5. **  $VER: libraries/virtualmem.h 1.2 (7.8.1997)
  6. */
  7.  
  8. #ifndef EXEC_TYPES_H
  9. #include <exec/types.h>
  10. #endif
  11.  
  12. #define VIRTUALMEMNAME "virtualmem.library"
  13. #define VIRTUALMEMVERSION 4L
  14.  
  15. #define VMEM_MINALLOC 128    /* recommended minimum size of a memory obj */
  16.  
  17. #define VMEMF_DONOTPAGE 0    /* do not page out */
  18. #define VMEMF_DONOTSWAP 1    /* do not swap chip to fast */
  19. #define VMEMF_PROTECT 2        /* protect */
  20.  
  21. #define MKVF_VECMEMORY 31    /* MakeVMem(): FreeVec() the memory */
  22.  
  23. #define VMEMM_DONOTPAGE (1<<VMEMF_DONOTPAGE)
  24. #define VMEMM_DONOTSWAP (1<<VMEMF_DONOTSWAP)
  25. #define VMEMM_PROTECT (1<<VMEMF_PROTECT)
  26.  
  27. #define MKVM_VECMEMORY (1<<MKVF_VECMEMORY)
  28.  
  29. /*
  30.  * The statistics structure. The fields are quite self-explanatory, aren't
  31.  * they?
  32.  */
  33.  
  34. struct VMemStat
  35. {
  36.   ULONG TotalBytes;
  37.   ULONG PagedBytes;
  38.   ULONG LockedBytes;
  39.   ULONG TotalObjects;
  40.   ULONG PagedObjects;
  41.   ULONG LockedObjects;
  42.   ULONG NextObject;
  43.   LONG SwapSize;
  44. };
  45.  
  46. /* VMem preferences structure. */
  47.  
  48. struct VMemPrefs
  49. {
  50.   UBYTE Version;
  51.   UBYTE pad_0;
  52.   LONG SwapSize;
  53. };
  54.  
  55. #define VMEMPREFS_VERSION 1
  56.  
  57. #endif
  58.